'''
 一球从100米高度自由落下，每次落地后反跳回原高度的一半，再落下。求它在第10次落地时，共经过多少米？第10次反弹多高？

 除了第1次从100米高度落下，其余的9次都经历了“反弹-落地”的过程，每个过程来回走过的长度相当于上一个过程的高度。
 因此，把第1个过程初始化并赋值，从第2个过程开始，先次上一个过程的高度计算进去，再将高度减半，传递给下一个过程进行计算。
'''

a = [100]  #每个‘反弹落地’过程经过的路程，第1次只有落地（100米）
h = 100  #每个‘反弹落地’过程，反弹的高度，第1次为100米
print('第1次从%s米高落地，走过%s米，之后又反弹至%s米。' % (h, a[0], h/2))
for i in range(2,11):  #第1次已初始化，再循环9次
    a.append(h)  #先计算路程，再高度减半，因为一个‘反弹落地’为2个高度
    h = h / 2
    print('第%s次从%s米高落地，共走过%s米，之后又反弹至%s米。' % (i, h, sum(a), h / 2))